#ifndef ARCHIVEINSTREAM_H
#define ARCHIVEINSTREAM_H

#include <QString>
#include <QFileInfo>
#include <QFile>
#include "lib7zip.h"

class ArchiveInStream : public C7ZipInStream
{
public:
    ArchiveInStream(const QString &filename);
    virtual ~ArchiveInStream();
    virtual wstring GetExt() const;
    virtual int Read(void *data, unsigned int size, unsigned int *processedSize);
    virtual int Seek(long long offset, unsigned int seekOrigin, unsigned long long *newPosition);
    virtual int GetSize(unsigned long long *size);

private:
    QFile *mFile;
    QFileInfo mFileInfo;
    QString mFileName;
};

#endif // ARCHIVEINSTREAM_H
